package org.example.rpc.framework.proxy;



import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Proxy;

/**
 * @Desc: 创建远程调用的动态代理对象，代理对象的方法调用会被 RemoteInvocationHandler 处理，从而实现远程调用
 */
public class RpcProxy<T> {

    public T remoteCall(String host,int port,Class clazz){
        return (T) Proxy.newProxyInstance(
                clazz.getClassLoader(),
                (Class<?>[]) new Class[]{clazz},
                new RemoteInvocationHandler(host,port,clazz)
        );
    }
}

